package com.ccz.demo.design.state;

public abstract class AbstractStatus {

    /**
     * 审核通过
     * @param id
     * @param currentStatus
     * @return
     */
    public abstract Result checkPass(String id, Enum<ActivityStatus> currentStatus);

    /**
     * 审核拒绝
     * @param id
     * @param currentStatus
     * @return
     */
    public abstract Result checkRefuse(String id, Enum<ActivityStatus> currentStatus);

    /**
     * 活动完成
     * @param id
     * @param currentStatus
     * @return
     */
    public abstract Result activityFinish(String id, Enum<ActivityStatus> currentStatus);

    /**
     * 活动取消
     * @param id
     * @param currentStatus
     * @return
     */
    public abstract Result activityCancel(String id, Enum<ActivityStatus> currentStatus);
}
